0
0
0
0
0
0
0
0
42
150
270
252
144
60
72
72
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
102
198
102
162
96
54
24
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
174
294
366
378
348
288
168
30
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
102
144
126
174
156
162
120
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
186
300
366
414
324
288
162
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
186
276
336
282
384
294
168
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
114
252
378
420
372
294
168
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
102
246
378
180
90
186
144
24
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
108
174
312
354
186
252
138
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
186
294
372
420
378
312
180
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
192
312
390
420
390
312
186
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
186
306
378
414
390
312
192
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
192
318
390
420
396
312
192
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
30
48
78
390
390
318
192
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
102
96
90
66
60
168
60
30
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
120
174
300
276
216
138
78
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
72
138
84
102
108
174
192
66
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
198
336
390
414
408
342
216
66
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
132
252
420
378
240
240
210
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
84
276
402
444
426
336
216
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
30
156
66
72
294
312
216
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
60
216
342
426
462
420
348
234
78
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
78
102
120
84
78
78
126
66
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
96
330
450
480
210
372
234
90
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
228
342
450
450
348
234
96
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
72
126
132
96
78
72
108
168
84
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
78
192
192
210
282
270
276
216
96
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
162
156
402
246
450
114
258
90
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
60
222
306
312
216
150
186
228
108
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
228
342
468
498
414
240
270
108
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
96
90
60
144
90
72
60
72
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
90
132
156
114
96
66
54
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
54
78
120
138
108
138
96
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
96
240
222
276
330
378
372
150
132
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
96
102
138
252
258
240
156
174
90
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
108
174
222
240
222
186
126
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
60
144
222
252
270
258
210
150
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
96
138
168
180
168
144
102
48
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
138
156
384
360
336
168
210
132
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
114
288
432
522
558
534
438
324
156
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
114
294
426
528
564
528
450
324
162
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
102
300
432
504
534
510
456
318
156
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
108
306
414
528
540
516
450
330
162
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
120
294
444
546
564
552
474
342
174
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
138
318
444
522
552
546
468
336
180
6
0
0
0
0
0
0
0
0
0
0
0
0
0
6
90
318
444
522
582
564
456
348
186
6
0
0
0
0
0
0
0
0
0
0
0
0
0
6
114
324
438
552
600
576
492
360
192
36
0
0
0
0
0
0
0
0
0
0
0
0
0
6
144
336
444
558
582
522
462
342
198
36
0
0
0
0
0
0
0
0
0
0
0
0
0
6
120
198
360
294
444
558
468
366
198
36
0
0
0
0
0
0
0
0
0
0
0
0
0
6
138
324
492
492
480
318
90
186
78
24
0
0
0
0
0
0
0
0
0
0
0
0
0
6
174
150
156
96
204
546
468
60
54
42
0
0
0
0
0
0
0
0
0
0
0
0
0
6
54
132
90
420
630
606
516
390
216
48
0
0
0
0
0
0
0
0
0
0
0
0
0
12
72
138
132
102
192
360
138
60
60
24
0
0
0
0
0
0
0
0
0
0
0
0
0
24
78
120
78
90
96
96
228
78
78
36
0
0
0
0
0
0
0
0
0
0
0
0
0
12
90
132
78
96
144
174
240
126
132
48
0
0
0
0
0
0
0
0
0
0
0
0
0
12
30
60
78
96
198
600
492
396
228
54
0
0
0
0
0
0
0
0
0
0
0
0
0
30
156
378
408
630
558
516
480
372
216
48
0
0
0
0
0
0
0
0
0
0
0
0
0
36
204
390
540
630
660
636
360
282
168
30
0
0
0
0
0
0
0
0
0
0
0
0
0
42
210
402
504
570
492
468
564
420
192
18
0
0
0
0
0
0
0
0
0
0
0
0
0
48
216
168
360
192
282
468
360
96
138
30
0
0
0
0
0
0
0
0
0
0
0
0
0
54
210
72
240
204
138
102
384
288
168
54
0
0
0
0
0
0
0
0
0
0
0
0
0
60
42
66
84
102
108
102
120
132
84
78
0
0
0
0
0
0
0
0
0
0
0
0
0
66
162
402
534
630
204
414
180
126
72
84
0
0
0
0
0
0
0
0
0
0
0
0
0
72
246
336
390
396
354
306
150
144
114
84
0
0
0
0
0
0
0
0
0
0
0
0
0
72
42
414
90
636
108
648
558
432
84
90
0
0
0
0
0
0
0
0
0
0
0
0
0
78
258
420
558
648
684
654
564
438
108
18
0
0
0
0
0
0
0
0
0
0
0
0
0
84
216
78
102
102
288
396
258
258
102
96
0
0
0
0
0
0
0
0
0
0
0
0
0
90
186
282
486
108
258
636
294
72
204
90
0
0
0
0
0
0
0
0
0
0
0
0
0
96
102
324
576
666
702
672
570
450
282
102
0
0
0
0
0
0
0
0
0
0
0
0
0
96
276
450
510
582
696
138
108
78
54
18
0
0
0
0
0
0
0
0
0
0
0
0
0
102
204
456
588
678
618
684
594
462
300
84
0
0
0
0
0
0
0
0
0
0
0
0
0
108
288
462
594
684
720
690
600
474
306
114
0
0
0
0
0
0
0
0
0
0
0
0
0
36
54
102
96
114
300
222
126
78
66
54
0
0
0
0
0
0
0
0
0
0
0
0
0
120
90
108
312
114
270
348
174
276
300
84
0
0
0
0
0
0
0
0
0
0
0
0
0
96
138
258
564
708
738
420
408
282
204
126
0
0
0
0
0
0
0
0
0
0
0
0
0
132
312
486
618
714
744
714
516
396
108
78
0
0
0
0
0
0
0
0
0
0
0
0
0
54
78
492
624
720
456
714
624
498
270
138
0
0
0
0
0
0
0
0
0
0
0
0
0
138
72
120
102
114
576
720
318
198
126
144
0
0
0
0
0
0
0
0
0
0
0
0
0
96
126
78
210
252
516
120
126
174
102
114
0
0
0
0
0
0
0
0
0
0
0
0
0
156
342
516
648
738
324
714
246
510
312
150
0
0
0
0
0
0
0
0
0
0
0
0
0
162
348
522
654
744
774
738
648
516
342
156
0
0
0
0
0
0
0
0
0
0
0
0
0
168
354
528
660
750
780
744
648
522
348
156
0
0
0
0
0
0
0
0
0
0
0
0
0
174
360
534
666
756
786
750
654
474
318
162
0
0
0
0
0
0
0
0
0
0
0
0
0
174
366
540
672
762
780
756
450
240
174
84
0
0
0
0
0
0
0
0
0
0
0
0
0
78
60
114
132
246
204
198
210
102
60
30
0
0
0
0
0
0
0
0
0
0
0
0
0
30
102
144
192
264
288
306
606
540
360
174
0
0
0
0
0
0
0
0
0
0
0
0
0
84
60
108
168
186
300
300
156
150
126
54
0
0
0
0
0
0
0
0
0
0
0
0
6
42
66
108
108
126
126
126
138
138
60
126
0
0
0
0
0
0
0
0
0
0
0
0
30
210
402
570
702
786
762
288
444
366
72
54
0
0
0
0
0
0
0
0
0
0
0
0
12
84
138
324
222
132
150
138
186
210
138
78
0
0
0
0
0
0
0
0
0
0
0
0
36
216
408
582
714
798
828
792
696
558
384
192
0
0
0
0
0
0
0
0
0
0
0
0
42
216
402
570
702
792
816
780
684
552
378
186
0
0
0
0
0
0
0
0
0
0
0
0
48
222
408
576
708
798
822
786
690
558
378
192
24
0
0
0
0
0
0
0
0
0
0
0
18
54
90
138
654
804
828
792
630
168
300
144
30
0
0
0
0
0
0
0
0
0
0
0
54
234
420
588
720
810
834
792
696
564
390
198
30
0
0
0
0
0
0
0
0
0
0
0
60
240
426
594
714
762
834
792
702
540
384
192
30
0
0
0
0
0
0
0
0
0
0
0
66
240
420
600
732
816
840
798
708
570
396
204
36
0
0
0
0
0
0
0
0
0
0
0
66
246
432
606
738
822
846
468
318
186
186
210
36
0
0
0
0
0
0
0
0
0
0
0
30
114
102
168
390
696
840
768
528
576
402
210
30
0
0
0
0
0
0
0
0
0
0
0
78
258
438
498
744
618
516
570
288
540
240
180
24
0
0
0
0
0
0
0
0
0
0
0
54
198
408
576
300
246
456
414
444
348
264
84
36
0
0
0
0
0
0
0
0
0
0
0
84
270
450
600
504
240
528
390
636
546
384
222
48
0
0
0
0
0
0
0
0
0
0
0
90
276
462
630
762
222
792
174
186
270
228
102
54
0
0
0
0
0
0
0
0
0
0
0
96
276
468
636
768
852
876
834
732
600
420
228
54
0
0
0
0
0
0
0
0
0
0
0
102
288
468
594
768
858
876
834
714
600
420
228
54
0
0
0
0
0
0
0
0
0
0
0
96
234
354
396
126
300
642
804
648
468
342
36
60
0
0
0
0
0
0
0
0
0
0
0
108
300
480
648
780
840
480
492
312
96
66
126
48
0
0
0
0
0
0
0
0
0
0
0
114
306
486
558
774
858
864
780
750
612
438
222
60
0
0
0
0
0
0
0
0
0
0
0
102
168
204
180
222
612
324
288
342
192
138
78
54
0
0
0
0
0
0
0
0
0
0
0
60
156
156
180
204
240
480
708
756
600
444
252
72
0
0
0
0
0
0
0
0
0
0
0
72
150
210
228
246
300
252
138
126
138
72
72
48
0
0
0
0
0
0
0
0
0
0
0
36
54
180
282
288
366
162
312
390
498
228
204
48
0
0
0
0
0
0
0
0
0
0
0
132
192
408
534
624
432
570
408
360
558
132
162
48
0
0
0
0
0
0
0
0
0
0
0
24
114
516
612
798
888
912
870
768
606
426
264
42
0
0
0
0
0
0
0
0
0
0
0
126
270
402
480
528
510
528
456
294
156
96
48
18
0
0
0
0
0
0
0
0
0
0
0
54
60
84
120
324
276
642
168
258
594
462
72
90
0
0
0
0
0
0
0
0
0
0
0
156
150
144
252
318
318
288
582
384
582
366
276
90
0
0
0
0
0
0
0
0
0
0
0
162
348
528
696
534
816
282
222
210
504
192
102
36
0
0
0
0
0
0
0
0
0
0
0
162
354
540
702
828
906
924
888
786
642
150
132
90
0
0
0
0
0
0
0
0
0
0
0
168
342
546
696
834
906
528
606
384
252
246
96
66
0
0
0
0
0
0
0
0
0
0
0
54
60
96
138
186
192
252
324
288
222
174
48
78
0
0
0
0
0
0
0
0
0
0
0
168
348
528
672
798
894
912
864
540
414
360
168
96
0
0
0
0
0
0
0
0
0
0
0
72
156
348
594
744
516
912
648
600
552
372
240
102
0
0
0
0
0
0
0
0
0
0
0
174
342
528
690
810
894
900
780
690
630
444
258
18
0
0
0
0
0
0
0
0
0
0
24
174
360
528
684
810
894
906
864
774
642
474
288
108
0
0
0
0
0
0
0
0
0
0
24
180
342
444
432
540
336
162
594
756
642
480
288
108
0
0
0
0
0
0
0
0
0
0
12
66
270
402
120
648
426
816
600
276
528
468
234
90
0
0
0
0
0
0
0
0
0
0
30
186
360
534
690
822
870
912
762
708
156
456
108
96
0
0
0
0
0
0
0
0
0
0
36
42
144
198
222
216
336
516
396
162
240
198
270
54
0
0
0
0
0
0
0
0
0
0
30
48
66
114
312
552
894
912
858
774
648
480
300
48
0
0
0
0
0
0
0
0
0
0
36
96
72
150
264
234
294
714
798
690
654
474
300
120
0
0
0
0
0
0
0
0
0
0
42
198
330
534
438
234
246
246
594
702
618
396
186
126
0
0
0
0
0
0
0
0
0
0
42
198
378
444
504
372
306
252
144
138
102
78
54
24
0
0
0
0
0
0
0
0
0
0
6
30
60
90
120
240
276
312
306
234
126
168
108
48
0
0
0
0
0
0
0
0
0
0
12
66
78
180
186
198
312
288
258
444
252
228
294
132
0
0
0
0
0
0
0
0
0
0
48
204
390
570
720
852
918
870
462
336
240
156
276
24
0
0
0
0
0
0
0
0
0
0
24
192
378
576
660
714
486
780
810
336
342
96
96
48
0
0
0
0
0
0
0
0
0
0
18
210
210
216
126
378
348
402
312
606
234
78
312
138
0
0
0
0
0
0
0
0
0
0
54
216
252
456
648
732
744
828
858
804
678
504
324
138
0
0
0
0
0
0
0
0
0
0
54
216
396
582
726
810
708
918
870
762
528
300
174
30
0
0
0
0
0
0
0
0
0
0
30
90
120
192
552
768
882
708
750
708
462
78
300
144
0
0
0
0
0
0
0
0
0
0
18
36
84
144
174
336
258
150
144
126
138
84
54
48
0
0
0
0
0
0
0
0
0
0
30
36
66
204
384
312
420
918
432
390
666
300
318
78
0
0
0
0
0
0
0
0
0
0
60
36
186
162
180
324
336
210
216
264
186
84
108
54
0
0
0
0
0
0
0
0
0
0
54
90
138
198
252
384
408
510
510
546
372
174
66
54
0
0
0
0
0
0
0
0
0
0
36
66
126
186
336
306
486
396
534
588
348
144
156
156
0
0
0
0
0
0
0
0
0
0
66
198
414
594
738
810
894
960
906
780
576
450
306
162
0
0
0
0
0
0
0
0
0
0
42
186
414
594
738
858
834
828
732
180
414
210
144
78
12
0
0
0
0
0
0
0
0
0
72
228
420
594
744
870
942
774
900
804
672
528
348
168
6
0
0
0
0
0
0
0
0
0
12
36
66
126
120
138
174
210
240
408
294
162
108
42
6
0
0
0
0
0
0
0
0
0
36
42
78
162
144
354
336
300
396
324
108
84
54
30
18
0
0
0
0
0
0
0
0
0
72
234
348
354
582
744
420
912
912
582
522
114
156
48
12
0
0
0
0
0
0
0
0
0
66
114
162
174
126
240
192
336
492
528
288
174
330
168
6
0
0
0
0
0
0
0
0
0
60
120
312
546
720
846
924
942
894
804
672
402
312
168
18
0
0
0
0
0
0
0
0
0
72
234
408
582
726
846
924
882
888
798
672
498
342
168
18
0
0
0
0
0
0
0
0
0
72
234
402
582
720
840
180
912
708
768
582
390
78
168
18
0
0
0
0
0
0
0
0
0
24
66
78
102
204
216
474
432
510
264
108
96
78
30
24
0
0
0
0
0
0
0
0
0
60
132
150
282
384
666
336
714
858
786
612
522
282
174
12
0
0
0
0
0
0
0
0
0
72
186
396
576
720
846
912
924
756
726
666
390
288
174
24
0
0
0
0
0
0
0
0
0
72
162
306
552
558
432
282
378
462
738
402
246
66
180
36
0
0
0
0
0
0
0
0
0
18
36
66
90
186
384
180
240
162
186
114
84
54
30
6
0
0
0
0
0
0
0
0
0
42
84
114
138
174
168
168
150
192
192
132
114
72
30
6
0
0
0
0
0
0
0
0
0
12
60
66
144
222
276
222
252
342
270
180
126
300
180
36
0
0
0
0
0
0
0
0
0
72
222
324
570
696
834
924
948
912
816
684
528
312
120
30
0
0
0
0
0
0
0
0
0
18
54
138
516
678
816
924
948
840
720
690
540
360
186
30
0
0
0
0
0
0
0
0
0
36
126
390
582
726
510
372
696
846
624
684
492
348
186
24
0
0
0
0
0
0
0
0
0
72
234
408
450
720
846
894
900
786
810
684
534
360
186
30
0
0
0
0
0
0
0
0
0
36
174
336
492
702
594
828
450
804
132
108
84
60
30
6
0
0
0
0
0
0
0
0
0
72
234
408
570
714
834
546
540
186
648
444
234
354
162
30
0
0
0
0
0
0
0
0
0
48
132
120
246
228
240
318
450
492
720
696
540
360
186
48
0
0
0
0
0
0
0
0
0
72
234
402
582
726
846
882
798
912
816
690
540
360
192
12
0
0
0
0
0
0
0
0
0
66
228
402
450
720
690
480
822
810
288
264
198
108
48
6
0
0
0
0
0
0
0
0
0
30
60
342
348
312
384
504
168
150
738
318
534
258
192
30
0
0
0
0
0
0
0
0
0
72
234
402
576
678
828
906
882
846
810
684
540
366
192
24
0
0
0
0
0
0
0
0
0
72
54
378
558
702
840
912
942
888
744
426
204
192
192
30
0
0
0
0
0
0
0
0
0
12
60
66
420
354
408
900
918
756
774
666
534
360
192
36
0
0
0
0
0
0
0
0
0
72
228
396
570
708
834
924
426
246
366
600
402
162
54
18
0
0
0
0
0
0
0
0
0
72
228
402
570
714
828
690
702
840
624
498
528
354
192
30
0
0
0
0
0
0
0
0
0
60
102
384
546
612
138
258
156
180
162
126
114
60
48
36
0
0
0
0
0
0
0
0
0
66
216
390
564
708
834
894
912
876
492
630
504
336
192
24
0
0
0
0
0
0
0
0
0
66
222
384
546
702
840
912
942
882
792
654
516
318
162
18
0
0
0
0
0
0
0
0
0
66
222
384
552
714
840
684
924
894
798
690
348
318
162
18
0
0
0
0
0
0
0
0
0
60
174
384
546
696
816
906
918
822
576
666
336
312
108
42
0
0
0
0
0
0
0
0
0
36
210
378
540
702
810
882
888
750
558
498
444
198
102
12
0
0
0
0
0
0
0
0
0
30
144
162
228
258
348
216
306
324
474
270
120
60
30
12
0
0
0
0
0
0
0
0
0
12
48
216
156
366
804
870
834
828
804
570
318
222
42
18
0
0
0
0
0
0
0
0
0
48
78
126
120
174
180
270
330
432
306
246
144
60
30
48
0
0
0
0
0
0
0
0
0
54
72
72
156
156
240
216
234
228
228
522
204
138
30
30
0
0
0
0
0
0
0
0
0
48
48
132
144
132
168
204
168
846
264
246
138
270
186
24
0
0
0
0
0
0
0
0
0
54
204
384
552
702
822
900
918
828
762
396
342
360
186
30
0
0
0
0
0
0
0
0
0
12
60
120
96
114
132
180
174
264
240
258
198
96
30
30
0
0
0
0
0
0
0
0
0
30
78
174
258
366
798
846
870
882
762
558
492
342
168
18
0
0
0
0
0
0
0
0
0
18
48
60
84
108
144
546
810
732
702
642
132
102
30
12
0
0
0
0
0
0
0
0
0
48
156
276
252
450
756
888
924
894
804
684
510
210
180
12
0
0
0
0
0
0
0
0
0
12
156
366
552
690
702
798
924
888
816
690
522
342
180
24
0
0
0
0
0
0
0
0
0
48
192
372
504
690
804
834
738
840
798
678
528
354
180
24
0
0
0
0
0
0
0
0
0
48
186
342
396
540
420
684
870
834
660
654
402
330
174
30
0
0
0
0
0
0
0
0
0
42
180
360
540
690
348
588
894
834
786
408
522
282
174
24
0
0
0
0
0
0
0
0
0
42
174
360
522
666
774
762
864
624
684
588
408
216
96
12
0
0
0
0
0
0
0
0
0
36
144
294
468
630
762
738
858
744
660
510
336
240
108
12
0
0
0
0
0
0
0
0
0
42
72
66
102
162
192
384
750
834
786
612
474
318
156
18
0
0
0
0
0
0
0
0
0
36
144
300
528
678
792
846
618
564
348
570
504
294
54
18
0
0
0
0
0
0
0
0
0
12
36
66
174
378
300
252
192
756
786
648
516
348
168
24
0
0
0
0
0
0
0
0
0
36
180
348
504
600
702
828
846
270
438
570
396
204
36
24
0
0
0
0
0
0
0
0
0
30
162
348
522
678
798
882
900
870
756
480
516
318
162
18
0
0
0
0
0
0
0
0
0
24
72
192
456
594
798
858
852
780
786
654
324
336
156
18
0
0
0
0
0
0
0
0
0
30
174
348
516
672
780
864
894
804
774
570
288
330
162
12
0
0
0
0
0
0
0
0
0
30
162
330
516
666
780
858
798
840
786
648
492
318
144
0
0
0
0
0
0
0
0
0
0
24
132
330
504
654
774
864
888
852
756
564
480
294
132
0
0
0
0
0
0
0
0
0
0
6
132
342
492
642
756
816
786
816
768
612
450
306
42
0
0
0
0
0
0
0
0
0
0
18
66
312
468
648
768
840
894
858
732
612
408
306
132
0
0
0
0
0
0
0
0
0
0
24
162
324
504
666
774
594
786
360
372
426
312
216
90
0
0
0
0
0
0
0
0
0
0
0
108
234
480
660
768
852
888
744
216
624
162
60
138
0
0
0
0
0
0
0
0
0
0
0
42
102
216
234
750
834
786
498
384
576
456
186
72
0
0
0
0
0
0
0
0
0
0
0
138
180
210
102
306
828
882
858
762
636
432
48
114
0
0
0
0
0
0
0
0
0
0
0
84
96
78
276
720
384
300
180
354
108
78
48
24
0
0
0
0
0
0
0
0
0
0
0
144
216
366
468
558
540
636
654
564
216
468
306
126
0
0
0
0
0
0
0
0
0
0
0
150
330
498
654
774
858
888
852
768
642
480
306
126
0
0
0
0
0
0
0
0
0
0
0
150
318
492
654
768
852
882
852
672
642
480
300
36
0
0
0
0
0
0
0
0
0
0
0
84
48
84
102
216
246
528
804
300
126
78
276
18
0
0
0
0
0
0
0
0
0
0
0
114
282
474
630
726
840
858
732
618
468
72
48
18
0
0
0
0
0
0
0
0
0
0
0
138
318
480
378
222
300
378
156
690
204
246
114
24
0
0
0
0
0
0
0
0
0
0
0
90
96
174
144
162
156
150
198
150
126
120
48
24
0
0
0
0
0
0
0
0
0
0
0
54
186
396
336
246
216
372
270
240
288
138
114
30
0
0
0
0
0
0
0
0
0
0
0
78
216
366
636
762
732
690
810
714
600
444
282
72
0
0
0
0
0
0
0
0
0
0
0
126
294
474
636
750
828
864
822
738
612
444
276
102
0
0
0
0
0
0
0
0
0
0
0
126
288
474
630
744
810
732
798
720
384
432
270
96
0
0
0
0
0
0
0
0
0
0
0
120
282
456
624
738
798
828
756
690
588
378
210
84
0
0
0
0
0
0
0
0
0
0
0
24
48
72
108
132
144
306
246
114
126
108
66
24
0
0
0
0
0
0
0
0
0
0
0
48
114
258
408
588
738
750
768
690
552
384
222
54
0
0
0
0
0
0
0
0
0
0
0
114
276
408
618
492
132
132
714
558
216
330
240
84
0
0
0
0
0
0
0
0
0
0
0
114
282
456
618
738
822
840
810
714
576
318
216
78
0
0
0
0
0
0
0
0
0
0
0
108
276
294
558
726
804
822
804
714
582
420
240
78
0
0
0
0
0
0
0
0
0
0
0
108
270
444
612
726
804
840
792
708
582
414
216
66
0
0
0
0
0
0
0
0
0
0
0
18
66
198
318
690
798
798
786
678
552
402
234
66
0
0
0
0
0
0
0
0
0
0
0
60
96
222
96
144
228
270
234
216
246
204
66
42
0
0
0
0
0
0
0
0
0
0
0
36
84
120
186
144
168
144
132
180
120
78
102
36
0
0
0
0
0
0
0
0
0
0
0
42
186
132
174
270
450
552
456
480
252
198
114
60
0
0
0
0
0
0
0
0
0
0
0
54
90
330
498
708
540
558
534
678
540
390
36
12
0
0
0
0
0
0
0
0
0
0
0
84
162
144
492
432
780
804
774
684
552
354
102
30
0
0
0
0
0
0
0
0
0
0
0
12
72
78
96
150
126
264
480
510
162
150
84
24
0
0
0
0
0
0
0
0
0
0
0
60
222
342
300
624
372
360
648
528
468
228
96
18
0
0
0
0
0
0
0
0
0
0
0
48
144
234
564
690
768
792
750
666
534
372
198
42
0
0
0
0
0
0
0
0
0
0
0
54
222
186
198
186
276
750
750
660
528
144
48
42
0
0
0
0
0
0
0
0
0
0
0
78
246
432
594
714
792
810
774
684
540
366
192
30
0
0
0
0
0
0
0
0
0
0
0
66
252
426
594
708
786
804
768
684
534
366
186
30
0
0
0
0
0
0
0
0
0
0
0
72
246
420
582
696
600
768
738
636
498
216
174
24
0
0
0
0
0
0
0
0
0
0
0
66
228
414
582
690
780
762
624
654
528
276
174
24
0
0
0
0
0
0
0
0
0
0
0
30
72
246
318
414
582
612
534
372
408
330
138
0
0
0
0
0
0
0
0
0
0
0
0
60
66
108
258
648
762
672
738
654
378
348
174
0
0
0
0
0
0
0
0
0
0
0
0
60
228
414
480
618
714
744
726
630
384
342
162
0
0
0
0
0
0
0
0
0
0
0
0
42
102
396
276
612
414
432
468
618
342
336
156
0
0
0
0
0
0
0
0
0
0
0
0
30
216
402
558
678
750
768
732
636
504
336
150
0
0
0
0
0
0
0
0
0
0
0
0
54
216
396
558
672
744
738
288
456
234
228
126
0
0
0
0
0
0
0
0
0
0
0
0
24
90
384
498
654
726
750
714
618
480
306
102
0
0
0
0
0
0
0
0
0
0
0
0
48
198
390
534
666
726
756
714
624
486
312
132
0
0
0
0
0
0
0
0
0
0
0
0
42
204
378
546
648
714
708
618
594
474
288
108
0
0
0
0
0
0
0
0
0
0
0
0
12
90
66
156
114
120
168
306
96
78
162
24
0
0
0
0
0
0
0
0
0
0
0
0
36
36
60
192
600
282
168
168
564
450
150
120
0
0
0
0
0
0
0
0
0
0
0
0
36
192
378
522
630
708
738
702
600
468
300
120
0
0
0
0
0
0
0
0
0
0
0
0
36
186
366
516
624
666
720
672
576
456
276
102
0
0
0
0
0
0
0
0
0
0
0
0
30
186
210
486
456
498
450
426
330
312
264
96
0
0
0
0
0
0
0
0
0
0
0
0
30
174
354
504
624
702
702
660
570
438
264
90
0
0
0
0
0
0
0
0
0
0
0
0
6
132
360
504
612
684
636
678
480
378
204
60
0
0
0
0
0
0
0
0
0
0
0
0
24
180
336
480
594
666
678
648
558
372
240
90
0
0
0
0
0
0
0
0
0
0
0
0
18
162
336
486
594
678
696
666
540
408
240
78
0
0
0
0
0
0
0
0
0
0
0
0
0
168
336
456
612
666
672
618
528
150
42
30
0
0
0
0
0
0
0
0
0
0
0
0
0
42
54
78
108
120
126
204
156
390
120
48
0
0
0
0
0
0
0
0
0
0
0
0
0
168
330
486
594
642
672
642
540
408
234
72
0
0
0
0
0
0
0
0
0
0
0
0
0
156
276
474
570
660
672
636
534
396
234
60
0
0
0
0
0
0
0
0
0
0
0
0
0
96
300
420
558
552
534
372
270
228
96
42
0
0
0
0
0
0
0
0
0
0
0
0
0
162
318
468
564
642
660
624
534
378
222
54
0
0
0
0
0
0
0
0
0
0
0
0
0
150
312
462
570
624
642
618
522
384
198
42
0
0
0
0
0
0
0
0
0
0
0
0
0
144
300
450
108
102
150
210
222
240
168
48
0
0
0
0
0
0
0
0
0
0
0
0
0
36
54
78
174
114
108
102
84
60
42
36
0
0
0
0
0
0
0
0
0
0
0
0
0
144
330
486
606
678
678
630
528
390
216
42
0
0
0
0
0
0
0
0
0
0
0
0
0
132
318
474
576
660
678
630
510
372
180
36
0
0
0
0
0
0
0
0
0
0
0
0
0
138
294
468
570
636
648
624
522
372
210
36
0
0
0
0
0
0
0
0
0
0
0
0
0
144
300
474
570
648
642
612
498
354
186
36
0
0
0
0
0
0
0
0
0
0
0
0
0
138
306
462
558
636
642
600
492
348
186
24
0
0
0
0
0
0
0
0
0
0
0
0
0
54
78
174
456
162
102
162
198
78
36
12
0
0
0
0
0
0
0
0
0
0
0
0
0
42
54
252
228
168
510
570
348
336
150
0
0
0
0
0
0
0
0
0
0
0
0
0
0
126
288
444
528
612
624
564
468
336
162
0
0
0
0
0
0
0
0
0
0
0
0
0
0
120
282
444
522
618
618
570
468
330
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
78
204
252
474
570
402
342
234
114
114
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
162
198
360
306
510
330
246
180
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
120
180
210
378
246
222
108
54
66
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
126
120
120
126
96
90
84
126
102
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
84
96
90
144
96
270
84
66
24
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
48
78
114
102
96
156
126
84
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
78
126
156
174
168
156
126
66
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
138
192
234
174
234
192
138
192
120
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
42
66
90
216
102
84
96
114
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
78
108
342
426
354
264
216
78
78
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
54
66
78
114
108
168
378
264
114
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
42
60
78
144
90
84
78
42
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
60
240
366
426
90
90
78
300
48
24
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
216
366
438
516
528
486
384
252
96
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
48
174
444
534
540
474
336
240
90
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
60
60
78
84
84
78
60
108
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
36
60
78
84
96
78
78
42
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
60
60
72
84
102
78
96
48
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
36
54
72
96
150
132
324
210
72
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
126
180
102
192
102
72
84
36
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
72
126
114
84
102
90
96
78
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
48
60
84
84
84
78
84
120
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
60
144
156
126
84
102
174
72
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
168
312
402
480
480
432
318
198
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
168
270
414
456
282
438
336
198
54
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
162
300
378
426
414
396
306
168
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
168
258
366
450
468
414
282
186
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
150
294
384
450
456
396
312
186
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
48
96
144
90
108
72
72
84
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
132
252
378
438
438
408
300
144
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
48
66
96
78
66
54
36
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
144
282
384
450
444
402
300
180
30
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
150
276
378
432
438
390
300
174
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
132
264
366
426
420
378
288
162
24
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
126
228
318
342
294
252
138
126
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
48
108
264
144
114
114
90
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
48
66
90
96
72
78
132
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
48
102
192
282
198
126
120
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
72
114
126
126
114
72
60
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
42
60
78
72
126
54
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
42
60
66
72
60
66
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
108
204
318
372
276
312
246
132
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
174
126
78
78
144
162
84
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
138
318
396
396
354
264
144
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
108
216
330
390
384
348
252
138
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
102
192
252
378
258
270
138
108
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
66
120
96
78
120
60
24
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
90
78
114
114
78
96
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
78
162
330
390
396
264
210
126
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
114
72
168
84
102
216
102
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
90
222
324
384
390
348
258
138
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
90
228
336
396
408
366
276
144
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
60
132
342
378
174
138
78
138
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
216
330
408
420
372
270
138
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
168
294
378
402
342
270
138
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
138
330
402
378
282
72
30
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
30
300
396
222
54
270
132
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
78
84
96
210
102
126
168
138
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
72
204
324
372
174
282
174
120
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
96
48
66
90
78
54
78
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
198
306
270
372
54
264
138
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
204
312
378
396
336
264
138
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
204
318
384
60
78
42
138
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
198
306
378
390
354
264
138
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
198
306
360
384
342
264
138
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
186
288
372
396
354
258
138
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
180
312
150
114
54
108
96
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
192
306
378
396
354
264
84
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
42
60
252
396
354
264
138
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
192
294
360
390
348
180
138
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
96
114
54
60
60
48
30
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
42
306
378
396
96
258
144
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
186
294
354
384
348
264
144
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
132
186
360
288
360
258
144
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
168
270
234
264
282
258
132
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
36
66
150
60
156
156
90
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
144
234
228
198
264
276
150
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
78
96
102
186
156
180
66
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
102
138
204
282
288
150
126
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
60
84
72
108
84
78
156
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
54
72
54
78
54
66
42
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
180
294
360
384
360
282
156
6
0
0
0
0
0
0
0